using System;
using System.Reflection;

internal class Class19<T, U> : Interface2
{
	private Action<T, U> action_0;

	public Class19(PropertyInfo propertyInfo_0)
	{
		if (propertyInfo_0 == null)
		{
			throw new ArgumentNullException("propertyInfo");
		}
		if (!propertyInfo_0.CanWrite)
		{
			throw new NotSupportedException("属性不支持写操作。");
		}
		MethodInfo setMethod = propertyInfo_0.GetSetMethod(true);
		this.action_0 = (Action<T, U>)Delegate.CreateDelegate(typeof(Action<T, U>), null, setMethod);
	}

	public void method_0(T gparam_0, U gparam_1)
	{
		this.action_0(gparam_0, gparam_1);
	}

	void Interface2.imethod_0(object object_0, object object_1)
	{
		this.action_0((T)((object)object_0), (U)((object)object_1));
	}
}
